package v1

import (
	"gf_blog_admin/internal/model"
	"github.com/gogf/gf/v2/frame/g"
)

type FileListReq struct {
	g.Meta `path:"/system/file" method:"get" tags:"system" sm:"文件列表" noCan:"true"`
	model.FileListInput
}

type FileListRes struct {
	Total int                   `json:"total"`
	Rows  []*model.FileListItem `json:"rows"`
}

type FileMenusReq struct {
	g.Meta `path:"/system/file/menus" method:"get" tags:"system" sm:"文件分类列表" noCan:"true"`
}

type FileMenusRes struct {
	Rows []*model.FileMenuItem `json:"rows" dc:"文件分类列表"`
}

type FileDestroyReq struct {
	g.Meta `path:"/system/file/destroy" method:"delete" tags:"system" sm:"文件删除" noCan:"true"`
	Ids    []uint64 `json:"ids" v:"required|array|max-length:200" dc:"id集合"`
}

type FileDestroyRes struct{}

type FileRecoverReq struct {
	g.Meta `path:"/system/file/recover" method:"put" tags:"system" sm:"文件恢复" noCan:"true"`
	Ids    []uint64 `json:"ids" v:"required|array|max-length:200" dc:"id集合"`
}

type FileRecoverRes struct{}

type FileRemoveReq struct {
	g.Meta `path:"/system/file/remove" method:"delete" tags:"system" sm:"文件彻底删除" noCan:"true"`
	Ids    []uint64 `json:"ids" v:"required|array|max-length:200" dc:"id集合"`
}

type FileRemoveRes struct{}
